In wireless communication networks that support communication of packet-switched traffic (e.g., web browsing, electronic mail, voice over Internet Protocol, video over Internet Protocol, etc.), various nodes are provided to enable such communications between mobile stations and an external packet-switched network, such as an Internet Protocol (IP) network. Examples of wireless networks that support communication of packet-switched traffic include those that operate according to the GSM (Global System for Mobile Communications) and UMTS (Universal Mobile Telecommunications System) standards, as defined by the Third Generation Partnership Project (3GPP).
According to the 3GPP standards, a GERAN (GSM EDGE Radio Access Network) that includes base stations and base station controllers is provided to enable wireless access by mobile stations. The 3GPP standards also provide for UMTS Terrestrial Radio Access Networks (UTRANs), which include node-Bs (which are equivalents of base stations) and radio network controllers (which are equivalents of base station controllers) to enable wireless access by mobile stations. In some wireless networks, both GERANs and UTRANs may be present.
The GERAN and/or UTRAN is (are) connected to a Serving GPRS (General Packet Radio Services) support node (SGSN), which can perform the following tasks: packet routing and transfer, mobility management (attach/detach mobile stations and location management), logical link management, and authentication and charging functions. The SGSN is in turn connected to a gateway GPRS support node (GGSN), which acts as the interface between the SGSN and an external packet data network (either a radio network or an IP network). The GGSN converts packets received from the SGSN into the appropriate format, and sends such packets to the external packet data network. Similar conversion is performed in the return path.
Traditionally, when a session is established between a mobile station and another network entity, data packets exchanged between the mobile station and the other network entity are tunneled (encapsulated) through the wireless core network. The traditional architecture establishes a tunnel between the GGSN and the SGSN, and another tunnel between the SGSN and the radio network controller/base station controller. In other words, two tunnels are established for a mobile station session. Under this traditional arrangement, all data packets have to pass through the SGSN, which has to terminate one tunnel, extract a packet, and place the packet into another tunnel. Such processing by the SGSN consumes valuable resources at the SGSN, and can be a source of bottleneck if there are a large number of sessions that the SGSN has to manage.
To address this issue, the 3GPP standards have defined a mechanism to establish a direct tunnel (sometimes referred to as a “one tunnel”) between the radio network controller/base station controller and the GGSN, which allows the SGSN to be bypassed. Note, however, that control functions such as mobility management still remain with the SGSN such that the SGSN remains responsible for modifying the direct tunnel in response to detecting that the mobile station has moved to coverage areas of different radio network controllers/base station controllers.
Conventionally, when the GGSN is restarted (such as due to temporary failure, maintenance, and so forth), the SGSN would receive either an error indication from the GGSN indicating that the resource is not available in the GGSN, or an indication that the GGSN has restarted. In response, the SGSN would mark the associated session information invalid, and may start a procedure to deactivate the session. Subsequently, the mobile station would then have to activate a new session, which may cause substantial overhead that places a load on the wireless communications network.